// 创建房间界面
import global from './../global'

cc.Class({
    extends: cc.Component,

    properties: {
        m_douDiZhu : cc.Node,               // 斗地主
        m_maJiang : cc.Node,                // 麻将
    },

    onLoad () {
        // 房间局数和房卡数量
        this.turnCount = "turn_count_1";
        // 创建房间的规则
        this.specialRule = "special_rule_1";
    },

    // 游戏切换后房间信息的隐藏
    setHideRoomInfo : function(){
        this.m_douDiZhu.active = false;
        this.m_maJiang.active = false;
    },

    // 游戏切换按钮
    onClickShowRoomInfoButton: function(event, custonData) {
        this.setHideRoomInfo();

        switch (custonData){
            case 'doudizhu':{               // 斗地主信息的显示
                this.m_douDiZhu.active = true;
                break;
            }
            case 'majiang':{                // 麻将信息的显示
                this.m_maJiang.active = true;
                break;
            }
            default:
                break;
        }
    },

    // 创建房间按钮
    onClickCreaterRoomButton: function(event, custonData) {
        switch (custonData){
            case 'replacement':{            // 代开
                
                break;
            }
            case 'opened':{                 // 已开
                
                break;
            }
            case 'doudizhu':{               // 斗地主
                // 创建房间
                global.Socket.creatorRoom({turnCount: this.turnCount, specialRule: this.specialRule},(err, data)=>{
                        if(err){
                            cc.log('creator room error = ' + err);
                        } else {
                            // cc.log('creator room data = ' + JSON.stringify(data));
                            // 加入房间
                            global.Socket.joinRoom(data.roomID, (joinErr, roomData)=>{
                                global.AdministrationData.PlayerData.joinRoomSuccess(global.AdministrationData.ResManager.resources[defines.gameConfig.createRoomConfig], roomData);
                                if(joinErr){
                                    cc.log('join room error = ' + joinErr);
                                } else {
                                    // cc.log('join room data = ' + JSON.stringify(roomData));
                                    // 进入房间
                                    cc.director.loadScene('GameScene');
                                }
                            });
                        }
                    }
                );
                break;
            }
            case 'majiang':{                // 麻将
                
                break;
            }
            default:
                break;
        }

        // 是否包含有这个规则
        if (custonData.indexOf('turn_count') === 0) {
            this.turnCount = custonData;
        }
        // 是否包含有这个规则
        if (custonData.indexOf('special_rule') === 0) {
            this.specialRule = custonData;
        }
    },
});
